Game apparatus, specified position determining method and recording medium and program

ABSTRACT

A position of a cursor in an image displayed on the display unit is detected, and at the backward of the image seeing from a predetermined viewpoint provided at the front of the image, there is virtually disposed a 3D map being parallel to the image and having its vertices placed on extended lines of straight lines connecting four corners of the image from the viewpoint. Then, an extended straight line connecting the viewpoint and the cursor to each other detects a point intersecting the 3D map. The detected point is determined as a point on the 3D map specified by the cursor.

CROSS-REVERENCE TO RELATED APPLICATIONS

[0001] This application is based on upon and claims the benefit ofpriority from the prior Japanese Patent Application No. 2000066878,filed May 10, 2000, the entire contents of which are incorporated hereinby reference.

BACKGROUND OF THE INVENTION

[0002] 1. Field of the Invention

[0003] The present invention relates to a technique for executing avideo game that displays an image of a predetermined map and an image ofa cursor displayed on the image of the map and that carries out a gameas specifying a predetermined position on the image of the map with thecursor.

[0004] 2. Description of the Related Art

[0005] As such a game that carries out a game as specifying apredetermined position on the image of the map with the cursor, forexample, there is a game, which is referred to as a war simulation game.

[0006] The game of this kind is designed to display a map, which isdivided into numerous small regions formed in, e.g., a matrix, andimages of combat elements placed in some small regions to combat witheach other. Then, a combat is deployed as moving the combat elementsappropriately in accordance with an operation content inputted by a gameplayer. In other words, this kind of game is designed to display a mapscreen page like a chessboard and combat elements like chess pieces on adisplay unit and repeats the combat between the combat elements,providing the game player enjoyment in a combat deployment and thestrategy in response to the deployment.

[0007] Here, in such a game, the cursor for specifying the position ofthe combat element must be overlaid on the map image. Also, it isnecessary to determine as to which position on the map is specified bythe cursor.

[0008] By the way, in the conventional war simulation game, the map hasonly two-dimensional information in many cases. In a case where atwo-dimensional map is used, it is easily figured out where the map andthe cursor displayed two-dimensionally are positioned and determinationas to which portion on the map is specified is easily carried out.Namely, the cursor displayed on the display unit always specifies theposition on the map corresponding to the position of the map imagedisplayed in a state that the cursor is superimposed thereon.Accordingly, in order to detect the position on the map, which thecursor specifies, it is enough that the position of the map image, whichis superimposed on the image of the cursor on the image displayed on thedisplay unit, may be detected. This makes it possible to detect whichposition on the map is specified by the cursor.

[0009] However, in a case where a three-dimensional map is used, thecircumstances are not as simple as the use of the two-dimensional map.

[0010] Namely, in the case of the three-dimensional map, a display map,which has been converted to be two-dimensional, is displayed on thedisplay unit. In this case, distortion, which results from theconversion, and a non-displayed portion occur depending on the case.Accordingly, unlike the case of two-dimensional map, it is impossible todetect as to which position on the map that the cursor specifies by onlydetecting the position where the display map image displayed on thedisplay unit and the cursor image are superimposed on each other.

[0011] In a case where the map has three-dimensional information, theuse of the map and the cursor both having three-dimensional informationmakes it possible to obtain the cursor position on the map bycomputation.

[0012] However, in the case where such a technique is adopted, thereoccurs a necessity to conform the positional relationship between upperand lower and right and left on the map image displayed on the displayunit to the positional relationship between upper and lower and rightand left on the moving direction of the cursor. This generatesinfluence, which is unfavorable to the game player, in some cases.Namely, there is a case in which the aforementioned map image isdisplayed on the display unit in the direction that the positionalrelationship between upper and lower and right and left on the map imagedisplayed on the display unit does not always instinctively conform tothe positional relationship between upper and lower and right and lefton the moving direction of the cursor with the intention of improvingflexibility of game deployment or making the image visible to the gameplayer. In such a case, the game player cannot instinctively perform theinput in the moving direction of the cursor.

SUMMARY OF THE INVENTION

[0013] It is an object of the present invention to provide a techniquefor solving the aforementioned problem. More specifically, an object ofthe present invention is to provide a technique for determining as towhich position on a 3D map is specified by a cursor in a game apparatusthat executes a game by displaying a display map image based on the 3Dmap, including three-dimensional information, and a cursor, includingtwo-dimensional information and indicating a predetermined position ofthe 3D map, on a display unit.

[0014] According to a first aspect of the present invention, there isprovided a specified position determining method applied to a gameapparatus, comprising the steps of: generating map data to display a mapimage on a display of the game apparatus, the map imagetwo-dimensionally expressing a corresponding three-dimensional map whichincludes information representing a predetermined three-dimensionalfield; generating cursor data to display a cursor on the displayed mapimage; controlling a position of the displayed cursor in accordance withan instruction from an operator; virtually disposing thethree-dimensional map in parallel to the map image at a backwardposition thereof seeing from a predetermined viewpoint, such thatstraight lines extending from the predetermined viewpoint to givenpoints on a peripheral edge of the map image further pass throughcorresponding points on a peripheral edge of the three-dimensional map;projecting the predetermined viewpoint onto the three-dimensional mapvia a position of the cursor displayed on the map image; and detecting apoint on the three-dimensional map where the projected viewpointintersects the predetermined three-dimensional field, wherebydetermining the detected point as a position where the cursor specifieson the displayed map image.

[0015] It may be arranged that the map data generating step includes asubstep of generating map data to display a position on the map image,which corresponds to the determined position, on the display to bedistinguishable from other positions.

[0016] It may be arranged that the predetermined three-dimensional fieldincludes a plurality of areas, and the detecting step includes a substepof detecting which of the plurality of areas includes the detectedpoint. In this case, the map data generating step may include a substepof generating map data to display an area on the map image, whichcorresponds to the detected area, on the display to be distinguishablefrom other areas.

[0017] Therefore, not only the game player specifies which position onthe 3D map but also the determination result can be displayed on thedisplay unit to be visually recognized by the game player. This makes itpossible for the game player to easily grasp which position is specifiedby the cursor and to make the game more easily understandable.

[0018] It may be arranged that the predetermined three-dimensional filedrepresents at least one of a ground surface and a water surface.

[0019] According to a second aspect of the present invention, there isprovided a game apparatus comprising: a generator for generating mapdata to display a map image on a display of the game apparatus, the mapimage two-dimensionally expressing a corresponding three-dimensional mapwhich includes information representing a predeterminedthree-dimensional field, generating cursor data to display a cursor onthe displayed map image, and controlling a position of the displayedcursor in accordance with an instruction from an operator; and acontroller for executing game processing in accordance with a positionon the displayed map image specified by the cursor, wherein thegenerator virtually disposes the three-dimensional map in parallel tothe map image at a backward position thereof seeing from a predeterminedviewpoint, such that straight lines extending from the predeterminedviewpoint to given points on a peripheral edge of the map image furtherpass through corresponding points on a peripheral edge of thethree-dimensional map, projects the predetermined viewpoint onto thethree-dimensional map via a position of the cursor displayed on the mapimage, and detects a point on the three-dimensional map where theprojected viewpoint intersects the predetermined three-dimensionalfield, whereby determining the detected point as a position where thecursor specifies on the displayed map image.

[0020] Accordingly, even when the 3D map (three-dimensional map), whichis useful to improve enjoyment in the game, is used, the position on the3D map can be specified by the two-dimensional cursor that movesindependent of the 3D map. This eliminates the need for conforming theupper and lower and right and left directions on the 3D map to the upperand lower and right and left directions in the moving direction of thecursor. Therefore, the game player can instinctively specify theposition using the cursor.

[0021] The 3D map may include three-dimensional information of terrainroughness.

[0022] Furthermore, the cursor position determining method and the gameapparatus according to the present invention can be implemented byreading a program code recorded on a computer-readable storage mediumset forth below into a predetermined computer, for example, an exclusivecomputer game and a home computer.

[0023] According to a third aspect of the present invention, there isprovided a storage medium having computer readable program code meansembodied in the medium, the computer readable program code meanscomprising: computer readable program code means for generating map datato display a map image on a display of the game apparatus, the map imagetwo-dimensionally expressing a corresponding three-dimensional map whichincludes information representing a predetermined three-dimensionalfield; computer readable program code means for generating cursor datato display a cursor on the displayed map image; computer readableprogram code means for controlling a position of the displayed cursor inaccordance with an instruction from an operator; computer readableprogram code means for virtually disposing the three-dimensional map inparallel to the map image at a backward position thereof seeing from apredetermined viewpoint, such that straight lines extending from thepredetermined viewpoint to given points on a peripheral edge of the mapimage further pass through corresponding points on a peripheral edge ofthe three-dimensional map; computer readable program code means forprojecting the predetermined viewpoint onto the three-dimensional mapvia a position of the cursor displayed on the map image; and computerreadable program code means for detecting a point on thethree-dimensional map where the projected viewpoint intersects thepredetermined three-dimensional field, whereby determining the detectedpoint as a position where the cursor specifies on the displayed mapimage.

[0024] According to a fourth aspect of the present invention, there isprovided a computer program for a computer having a display, thecomputer program causing the computer to execute the steps of:generating map data to display a map image on a display of the gameapparatus, the map image two-dimensionally expressing a correspondingthree-dimensional map which includes information representing apredetermined three-dimensional field; generating cursor data to displaya cursor on the displayed map image; controlling a position of thedisplayed cursor in accordance with an instruction from an operator;virtually disposing the three-dimensional map in parallel to the mapimage at a backward position thereof seeing from a predeterminedviewpoint, such that straight lines extending from the predeterminedviewpoint to given points on a peripheral edge of the map image furtherpass through corresponding points on a peripheral edge of thethree-dimensional map; projecting the predetermined viewpoint onto thethree-dimensional map via a position of the cursor displayed on the mapimage; and detecting a point on the three-dimensional map where theprojected viewpoint intersects the predetermined three-dimensionalfield, whereby determining the detected point as a position where thecursor specifies on the displayed map image.

[0025] It may be arranged that the computer program is stored in acomputer readable storage medium.

[0026] It is noted that the program code described in this specificationis a concept including data necessary for causing the game apparatus toexecute the game, a control parameter, and the like in addition to theprogram itself.

BRIEF DESCRIPTION OF THE DRAWINGS

[0027] These objects and other objects and advantages of the presentinvention will become more apparent upon reading of the followingdetailed description and the accompanying drawings in which:

[0028]FIG. 1 is a hardware configuration view illustrating an example ofa game apparatus main body to which the present invention is applied;

[0029]FIG. 2 is a function block diagram illustrating a configurationexample of a game apparatus according to a first embodiment of thepresent invention;

[0030]FIG. 3 is a function block diagram illustrating a configuration ofa game controller shown in FIG. 2;

[0031]FIG. 4 is a function block diagram illustrating a configuration ofan image generator shown in FIG. 2;

[0032]FIG. 5 is a flowchart of a cursor position determining method ofthis embodiment;

[0033]FIG. 6 is a view illustrating one example of an image displayed ona display unit in a normal state;

[0034]FIG. 7 is a view conceptually illustrating an outline of a cursorposition determining method of this embodiment; and

[0035]FIG. 8 is a view illustrating one example of an image displayed ona display unit in a combat state;

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

[0036] A preferred embodiment of the present invention will bespecifically described with reference to the accompanying drawings.

[0037] A game apparatus of the present invention will be firstexplained. The game apparatus of the present invention is implemented asa game apparatus having hardware configured as illustrated in FIG. 1.

[0038] A game apparatus main body 2 has two buses of a main bus B1 and asub-bus B2 as illustrated in the figure. These buses B1 and B2 areconnected or disconnected to/from each other via a bus interface INT.

[0039] A main CPU (Central Processing Unit) 10, which is composed of amicroprocessor, a first vector processing unit (VPU0, hereinafterreferred to as “first VPU”) 20, a main memory 11 having a RAM (RandomAccess Memory), a main DMAC (Direct Memory Access Controller) 12, anMPEG (Moving Picture Experts Group) decoder (MDEC) 13, a second vectorprocessing unit (VPU1, hereinafter referred to as “second VPU”) 12, anda GIF (Graphical Synthesizer-interface) 30, which functions as anarbiter for the first and second VPUs 20 and 21, are connected to themain bus B1. Moreover, a graphical synthesizer (hereinafter referred toas “GS”) 31 is connected thereto via the GIF 30. A CRTC (CRT controller)33 for generating a video output signal is connected to the GS 31.

[0040] Though the CRTC is connected to a predetermined display unit fordisplaying a game image, the illustration of this display unit isomitted.

[0041] The main CPU 10 reads in an activation program from a ROM 17 onthe sub-bus B2 via the bus interface INT at a game apparatus start-uptime, and executes the activation program to operate an operatingsystem. The main CPU 10 also controls a media drive 60 to read out anapplication program and data from a media 61 to store them to the mainmemory 11. Moreover, the main CPU 10 performs geometry processing withrespect to various kinds of data read from the media 61, for example,three-dimensional object data (coordinate values of vertices(representative points) of polygons) composed of a plurality of basicgraphics (polygons) in cooperation with the first VPU 20.

[0042] Additionally, in the main CPU 10, there is provided a high-speedmemory, which is referred to as SPR (Scratch Pad RAM), for temporarilystoring the result of processing in cooperation with the first VPU 20.

[0043] The first VPC 20 has a plurality of operators to carry out anoperation of a real number of floating-point arithmetic. The first VPC20 performs floating-point arithmetic in parallel using these operators.Namely, the main CPU 10 and first VPC 20 perform arithmetic processing,which requires a precise operation on a polygon basis, among geometryprocessing. Then, they generate a display list having polygon definitioninformation as its content such as a vertex coordinate sequence, shadingmode information and so on obtained by this processing.

[0044] Polygon definition information is composed of drawing regionsetting information and polygon information. Drawing region settinginformation is made up of an offset coordinate at a frame buffer addressof the drawing region and a coordinate of a drawing clipping region tocancel the drawing when a polygon coordinate is placed at the outside ofthe drawing region. Polygon information is composed of polygon attributeinformation and vertex information. Polygon attribute information isinformation for specifying a shading mode, an a blending mode, and atexture mapping mode. Vertex information includes a vertex drawing innerregion coordinate, a vertex texture inner region coordinate and a vertexcolor, etc.

[0045] As is the case with the first VPU 20, the second VPU 21 has aplurality of operators to carry out an operation of a real number offloating-point arithmetic. The second VPC 21 performs floating-pointarithmetic in parallel using these operators. Then, the second VPC 21generates a display list having an image generated by an operation of acontrol unit 81 and an operation of a matrix, e.g., relatively easytwo-dimensional polygon definition information as its content, which canbe generated by processing of, e.g., perspective conversion with respectto a simple-shaped object such as a building, a car, etc., a parallellight source calculation, generation of a two-dimensional curvature, andso on.

[0046] Though the first VPU 20 and second VPU 21 have the sameconfiguration, they function as a geometry engine that starts arithmeticprocessing with a different content. Normally, processing (non-fixedgeometry processing) for character movement, which needs a complicatedbehavior calculation, is assigned to the first VPU 20. Then, processing(fixed geometry processing) for an object, which is simple but needsnumerous polygons, for example, a background building and the like, isassigned to the second VPU 21.

[0047] The first VPU 20 performs macro arithmetic processing to besynchronized with a video rate, and the second VPU 21 is designed tooperate in synchronization with the GS 31. For this purpose, the secondVPU 21 is equipped with a direct path directly connecting to the GS 31.Conversely, the first VPU 20 is closely connected to a microprocessorprovided in the main CPU 10 to facilitate programming of complicatedprocessing.

[0048] The first VPU 20 and second VPU 21 generate the display lists.The generated display lists are transferred to the GS 31 via the GIF 30.

[0049] The GIF 30 performs arbitration to prevent occurrence of acollision at the time of transferring the display lists generated by thefirst VPU 20 and second VPU 21 to the GS 31. In this embodiment,however, a function of checking these display lists in order of priorityto transfer them to the GS31 from the higher display list is added tothe GIF 30. Information indicating priority of the display lists isgenerally described in its tag region when the VPUs 20 and 21 generatedisplay lists, but the GIF may determine the priority originally.

[0050] The GS 31 holds drawing contexts. The GS 31 reads thecorresponding drawing context based on identification information ofimage contexts included in the display lists notified from the GIF 30.Then, the GS 31 performs rendering processing by use of the read drawingcontext to draw a polygon in a frame memory 32. The frame memory 32 canbe used as a texture memory, so that a pixel image on the frame memoryis also used as a texture to be adhered onto a polygon to be drawn.

[0051] Referring back to FIG. 1, the main DMAC 12 provides DMA transfercontrol to the respective circuits connected to the main bus B1, whileprovides DMA transfer control to the respective circuits connected tothe sub-bus B2 in accordance with the state of bus interface INT.

[0052] The MDEC 13 operates concurrently with the main CPU 10, anddecompresses data compressed in MPEG (Moving Picture Experts) or JPEG(Joint Photographic Experts Group).

[0053] A sub-CPU 14 comprising a microprocessor and so on, a sub-memory15 having a RAM, a sub-DMAC 16, a ROM 17 having a program such as anoperating system and the like stored therein, a sound processing unit(SPU) 40 that reads sound data stored in a sound memory 59 to output asan audio output, a communication controller (ATM) 50 that performs datatransmission/reception via a public switched telephone network, a mediadrive 60 for attaching a recording medium 61 such as a CD-ROM andDVD-ROM, and an input unit 70 are connected to the sub-bus B2. The inputunit 70 includes a connection terminal 71 for connecting a control unit81, a connection terminal 72 for connecting a memory card MC, a videoinput circuit 73 for inputting image data from an external unit, and anaudio input circuit for inputting sound data from an external unit.

[0054] The control unit 81 corresponds to inputting means of the presentinvention.

[0055] The sound processing unit 40 is connected to a speaker (notshown) of the present invention to output effective sounds.

[0056] The sub-CPU 14 performs various kinds of operations in accordancewith a program stored in the ROM. The sub-DMAC 16 provides the DMAtransfer control to the respective circuits connected to the sub-bus B2only when the main bas B 1 and sub-bus B2 are separated from each otherby the bus interface INT.

[0057] The game apparatus of this embodiment also performscharacteristic geometry processing. As mentioned above, the concurrentoperation of first VPU 20 and second VPU 21 makes it possible to performgeometry processing, which is adaptable to high-speed renderingprocessing. Hereinafter, as to whether the result of arithmeticprocessing obtained by the first VPU 20 is directly sent to the GIF 30or serially sent thereto via the second VPU 21, the selection isdesigned to be performed by software. The former mode is referred to asa parallel connection and the latter mode is referred to as a serialconnection. In either case, the output of second VPU 21 has a pathdirectly connected to the GIF 30 (GS 31) and performs a coordinateconversion in synchronization with timing of rendering processing of theGS 31. As a result, the standby state of GS 31 is not maintained morethan necessary.

[0058] In the above-arranged game apparatus, when the recording medium61 of the present invention having, for example, a CD-ROM is attached tothe disk drive 41 and power is turned on or reset processing isperformed, the main CPU 10 executes OS recorded in the ROM 17. When OSis executed, the main CPU 10 initializes the entirety of the apparatusto confirm the operation and the like and controls the disk controller40 to execute a game program recorded in a CD-ROM 44 after reading it tothe main memory 13. The execution of this game program allows the mainCPU 10 to form the function block shown in FIG. 2 and to implement thegame apparatus 2 of the present invention.

[0059] As illustrated in FIG. 2, the game apparatus of this embodimentcomprises an instruction information analyzer 110, a game controller120, and an image data generator 130.

[0060] The instruction information analyzer 110 is connected to thecontrol unit 81, and determines the operation content inputted from thecontrol unit 81 by the game player. The operation content analyzed bythe instruction information analyzer 110 is sent to the game controller120 to be reflected in control of executing the game.

[0061] The game controller 120 integrally controls the entirety of gameto be executed by the present invention, and corresponds to controlmeans of the present invention.

[0062] In addition, the game executed by the game apparatus of thepresent invention is a war simulation game. The war simulation game tobe executed by this game apparatus can be described as follows:

[0063] A map image of a map, which is divided into rectangular smallregions formed in a matrix, is displayed on the display unit and combatelements, which fight with each other, are displayed on some smallregions so that the combat is deployed as moving the combat elementsappropriately in accordance with instructions from the game player. Thiswar simulation game is executed by alternately repeating a normal stateand a combat state wherein the normal state indicates that movement ofthe combat elements is performed and the combat state indicates that thecombat elements fight with each other in the normal state.

[0064] The game controller 120 comprises a selector 121, a normal statecontroller 122, and a combat state controller 123 as shown in FIG. 3.

[0065] The selector 121 selects the normal state or combat state inaccordance with the operation content inputted by the game player viathe control unit 81.

[0066] The normal state controller 122 performs control in the normalstate. The combat state controller 123 performs control in the combatstate. Data of each of the normal state controller 122 and the combatstate controller 123 is sent to an image data generator 130 to bedescribed later to be reflected in generation of an image to bedisplayed on the display unit.

[0067] The combat state controller 123 comprises a distance detector123A, which corresponds to distance detecting means of the presentinvention. The distance detector 123A is capable of receiving dataselected from the selector 121. At the time of receiving the selecteddata, the distance detector 123A detects a distance between the player'scombat element to execute the combat according to the player's operationcontent inputted by the game player among the player's combat elementsand the opponent's combat element fighting with the player's combatelement, whereby generating distance data of the corresponding distance.The generated distance data is sent to the image generator 130.

[0068] The image data generator 130 generates image data to display adesired image on the display unit. The display unit displays an imagebased on this image data. This image data generator 130 corresponds toimage data generating means of the present invention.

[0069] The image data generator 130 comprises a normal state imagedetermining unit 131, a combat state image determining unit 132, and adata generator 133 as shown in FIG. 4. The normal state imagedetermining unit 131 determines an image to be displayed on the displayunit in the normal state. The combat state image determining unit 132determines an image to be displayed on the display unit in the combatstate. The data generator 133 generates final image data based on data,which is indicative of the image to be displayed on the display unit andwhich is sent from either the normal state image determining section 131or the combat state image determining section 132.

[0070] The normal state image determining section 131 includes a mapdata generator 131A, a cursor data generator 131B, a specified positiondetermining unit 131C and a 3D map data recorder 131D.

[0071] The 3D map data recorder 131D records 3D map data.

[0072] This 3D map data is data of a map, which includesthree-dimensional information and which is used to generate map dataabout a display map to be display on the display unit in the normalstate. The 3D map data is designed to generate such a display map thatis divided into small quadrangle regions formed in a matrix though datais not limited to this.

[0073] The map data generating section 131A generates map data about atwo-dimensional display map to be displayed on the display unit based on3D map data read from the 3D map data recording section 131D. The mapdata is sent to the data generator 133.

[0074] The map data generator 131 also generates combat element data fordisplaying the player's combat element and the opponent's combat elementon the display wherein the player's combat element moves based on theoperation content inputted by the gamer player via the control unit 81and the opponent's combat element moves automatically upon receipt ofcontrol of predetermined data. It is noted that the opponent's combatelement may execute movement and combat automatically under control ofthe game controller 120 or based on the operation content inputted bythe other player.

[0075] The combat element described herein indicates one that is movableon the 3D map and fights with an enemy combat element. For example, thecombat element is expressed as a tank, a flat land, a foot soldier, etc,depending on the kinds of war simulation games.

[0076] The cursor data generator 131B displays a two-dimensional cursorat a predetermined position on the screen based on the operation contentinputted by the player via the control unit 81. The cursor datagenerator 131B generates cursor data for displaying the cursor on thescreen. The data is sent to the data generator 133.

[0077] The specified position determining unit 131C determines aposition on the 3D map specified by the cursor. Position data about theposition specified by the cursor is sent to the data generator 133.

[0078] The combat state image determining unit 132 determines an imageto be displayed on the display in the combat state. Specifically, thecombat state image determining unit 132 determines what image should bedisplayed on the display based on data generated by the combat statecontroller 123.

[0079] Actions of the game apparatus of this embodiment will be nextexplained in connection with one embodiment of the specified positiondetermining method according to the present invention. This gameapparatus executes the specified position determining method of thepresent invention with a flow shown by FIG. 5.

[0080] Power source is turned on or reset processing is performed, andthe game player inputs the operation content of the game start via thecontrol unit 81, whereby the game apparatus starts a war simulation game(S201).

[0081] When the game is started, the normal state is initiated (S202),so that the screen page of the normal state is displayed on the displayunit. Namely, the selector 121 selects the normal state in an initialstate.

[0082] On the screen page of the normal state, the display map, whichexpresses the 3D map two-dimensionally, the player's combat elements,the opponent's combat elements, and the cursor are displayed. An exampleof the image displayed on the display unit at this time is illustratedin FIG. 6.

[0083] The display map, combat elements, and cursor are displayed asfollows:

[0084] Specifically, the map data generator 131A reads 3D data mapincluding three-dimensional data including three-dimensional data fromthe 3D map data recorder 131D, and converts it to map data abouttwo-dimensional display map, whereby generating the display map.

[0085] A display map M is as shown in FIG. 6. Namely, the display map Mis divided into quadrangle small regions M1, M1, . . . in a matrix form.In this example, different geographical features such as a flat ground,a river, a mountainous district, and the like are given to therespective small regions M1, M1, . . . . These features exert aninfluence upon the result of combat at each of the small regions M1, M1,. . . . That is, the combat elements S1, S1, . . . have intrinsicproperties, respectively, and advantageous small regions M1 , M1, . . .and disadvantageous regions M1, M1, . . . are predetermined. The gameplayer works out a strategy of movement of each of player's combatelements S1, S1, . . . with consideration given to such geographicalfeatures.

[0086] These combat elements S1, S1, . . . are designed to move inaccordance with data generated by the instruction information analyzer110 based on the operation content inputted by the player via thecontrol unit 81. The map data generator 131A generates combat elementdata for displaying the respective combat elements S1, S1, . . . on thedisplay unit based on data generated by the instruction informationanalyzer 110 under the normal state controller 122.

[0087] It is noted that the respective combat elements S1, S1, . . . aredesigned to move in the unit of small regions M1, M1, . . . as a minimumunit. The opponent's combat elements M1, M1 . . . move in the unit ofsmall regions M1, M1 . . . under the normal state controller 122, andthe player's combat elements are designed to move to the small regionsM1, M1, . . . , which the player has specified with the cursor C.

[0088] The cursor C is displayed based on cursor data generated by thecursor data generator 131B. The cursor data originally has onlytwo-dimensional information and is expressed two-dimensionally.

[0089] The cursor data is generated by the cursor data generator 131Bbased on the operation content inputted by the game player via thecontrol unit 81. In accordance with the instructions of movement inupper and lower and right and left directions inputted by the gameplayer using the controller, the cursor C is controlled to be moved tothe corresponding direction. Data necessary for this control is inputtedto the cursor data generator 131B via the control unit 81, theinstruction information analyzer 110, and the normal state controller122.

[0090] Axes in the upper and lower and right and left directions wherethe cursor C moves are directions indicated by XC and XY in the figure,and they deviate from axes XM and YM in the upper and lower and rightand left directions about the display map M. Namely, the movingdirection of the cursor C is controlled regardless of the axes XM and YMin the upper and lower and right and left directions on the display mapM.

[0091] In the normal state, it is also determined as to which positionon the 3D map the cursor C specifies using the display map M. Namely,when the game player moves the player's combat elements S1, S1, . . . ,small regions M1, M1, . . . , must be specified by the cursor C.Accordingly, the specified position determining unit 131C determines theposition on the 3D map, which the cursor C specifies on the display mapM, by the way set forth below.

[0092] The specified position determining unit 131 C determines not onlythe position on the 3D map specified by the cursor C using the displaymap M but also which small region M1 the cursor C specifies using thedisplay map M.

[0093] This determination is performed by the method as shown in FIG. 7.It is noted that FIG. 7 schematically and conceptually shows thisdetermination method.

[0094] According to this method, an image G, which is displayed on thedisplay unit, and a predetermined viewpoint E, which is placed in frontof the image G, are virtually formed. Next, a rectangular 3D map 3DM isvirtually (imaginarily) formed such that four comers thereof are locatedon straight lines originating from the viewpoint E and passing throughfour corners of the image G. Accordingly, as seen from FIG. 7, the 3Dmap 3DM is placed in parallel with the image G at a backward positionseeing from the viewpoint E. More specifically, the 3D map 3DM isvirtually disposed such that an X-Y plane (a plane including X and Yaxes) thereof is set in parallel to the image G which istwo-dimensional. This 3D map corresponds to the display map M displayedon the display unit. At this time, the specified position determiningunit 131C uses, for example, 3D map data obtained from the 3D maprecorder 131D via the map data generator 131A in order to form the 3Dmap 3D virtually.

[0095] Then, in this state, a straight line passing through theviewpoint E and a predetermined portion of the cursor C (e.g., topportion of the cursor C indicated by an arrow shape) is virtuallyformed, i.e. the viewpoint E is projected via the predetermined portionof the cursor C. Next, it is detected which position on the 3D map 3DMthe straight line intersects. After that, it is also detected in whichsmall region M 1 a point of such an intersection exists.

[0096] Then, by assuming that the cursor C specifies the small region M1where the point of intersection exists, it is determined which smallregion M1 the cursor C specifies using the display map M.

[0097] In this embodiment, data of which small region M1 the cursor Cspecifies is sent to the map data generator 131A. As a result, the mapdata generator 131A uses the above data in generating combat elementdata after deciding destinations of combat elements S1, S1.

[0098] The above data can be used as follows though this is not alwaysneeded.

[0099] Specifically, the above data can be used to generate image datafor displaying a small region S1 specified by the cursor C at thecurrent point on the display unit as distinguished from other smallregions S1, S1, . . . . This can be attained by, for example, making adifference in color between the small region S1 and other regions S1, S1. . . or adding some pattern to the small region S1 though theillustration is omitted. Data generated in this case is capable ofdisplaying such a color and a pattern.

[0100] The image displayed on the display unit in the normal state isdisplayed based on image data generated when the data generator 133combines map data, combat element data and cursor data generated asmentioned above.

[0101] In the normal state, a determination whether or not apredetermined condition about the start of combat is satisfied isperformed (S203). For example, this condition is satisfied when the gameplayer inputs the operation content, which corresponds to theinstructions in which the predetermined player's combat elements S1, S1are fought with the opponent's combat elements S1, S1, via the controlunit 81 or when the normal state controller 122 supports the start ofcombat in accordance with the predetermined condition. The determinationwhether or not this condition is satisfied is performed by, for example,the selector 121.

[0102] When this condition is satisfied (S203: YES), the selector 121generates switching data for switching from the normal state to thecombat state and the combat state controller 121 receives it and startsto control the combat state, so that the combat state is started (S204).When the condition is not satisfied (S203: NO), the normal state iscontinued.

[0103] When the combat state is started, an image, which shows asituation in which the player's combat element S1 and the opponent'scombat element S2 are fighting with each other, is displayed on thedisplay unit in real time.

[0104] This image is displayed on the display unit in accordance withimage data, which the data generator 133 has generated based on datadetermined by the combat state image determining unit 132 under controlof the combat state controller 123. This image shows that the player'scombat element executes an action in real time in accordance with theoperation content inputted by the game player. Accordingly, the datagenerator 133 generates combat image data to display the player's combatelement S1, which executes a combat in accordance with the operationcontent inputted by the game player among the player's combat elementsS1, S1, and the opponent's combat element S1 fighting with the player'scombat element S1 in real time. In other words, the player's combatelement S1 is displayed on the screen in real time in accordance withthe operation content inputted by the game player. For example, theimage as a moving image using a polygon is displayed on the displayunit. One example of the image displayed on the display unit in thecombat state is illustrated in FIG. 8.

[0105] At the combat state starting time, the following processing iscarried out, whereby determining an initial screen page at the beginningof the combat state.

[0106] First, when the condition for starting the combat state is met,the aforementioned combat data is inputted to the combat statecontroller 123. This data is also sent to the distance detector 123Aprovided in the combat state controller 123.

[0107] Upon receipt of this data, the distance detector 123A detects adistance between the player's combat element S1, which executes thecombat, and the opponent's combat element S1 so as to generate distancedata of the distance. This distance denotes, for example, a distancebetween both combat elements S1 on the 3D map 3DM.

[0108] Distance data may be one that is proportional to the distancebetween both combat elements S1. In this example, however, to simplifythe explanation, two kinds of different distance data are generateddepending on whether both combat elements S1, which are to fight witheach other, are placed at the small regions M1 adjacent to each othervia the side or at a different position. Namely, the distance detector123A generates distance data indicating that both combat elements S1 areplaced in a close distance range in the former case and in a longdistance range in the latter case.

[0109] This can be explained with reference to FIG. 9. In this example,it is assumed that the opponent's combat element S1 is placed at thesmall region M1 as illustrated in the figure. Distance data indicatingthat both are in the close distance range is generated only when theplayer's combat elements are placed at four small regions shown bydiagonal lines. When the player's combat elements are placed at theother regions, distance data indicating that both are in the longdistance range is generated.

[0110] Then, this data is sent to the combat state image determiningunit 132 provided in the image data generator 130. The combat stateimage determining unit 132 generates image data about the initial imagedisplayed on the display unit in accordance with the distance data atthe beginning of the change to the combat state. In this embodiment,when the combat state image determining unit 132 receives distance dataindicating that both combat elements S1 are placed in the close distancerange, the combat state image determining unit 132 is configured togenerate initial image data for displaying the initial image indicatingthat both combat elements are in the close distance range as comparedwith the case in which it receives data indicating that both combatelements are in the long distance range.

[0111] More specifically, this is illustrated as in FIG. 10. FIG. 10shows an example of the initial image in a case (A) in which the combatstate image determining unit 132 receives distance data indicating thatboth combat elements S1 are placed in the close distance range and thatof the initial image in a case (B) the combat state image determiningunit 132 receives data indicating that both combat elements are in thelong distance range. In either example of FIG. 10, the soldier displayedat the front indicates the player's combat element S1 and the soliderdisplayed at the backward is the opponent's combat element S1.

[0112] According to these examples, in the case (A) in which distancedata indicates that both combat elements S1 are placed in the closedistance range, the opponent's combat element S1 is displayed largely ascompared with the case (B) in which distance data indicates that bothcombat elements S1 are placed in the long distance range.

[0113] In a case where distance data is data that shows numerous levels(or non-level), which are proportional to the distance, the distancebetween the player's combat element S1 and the opponent's combat elementS1 can be variously expressed.

[0114] In the combat state, it is judged whether or not a fixedcondition about the end of combat is met (S205). For example, wheneither of the player's combat element S1 and the opponent's combatelement S1, which are fighting with each other, is completely destroyedor annihilated, this condition can be met. The judgment whether thiscondition is met or not is performed by, for example, the selector 121.

[0115] When this condition is met (S205: YES), the combat state isended. When the combat state is ended, the selector 121 performsswitching from the combat state to the normal state so as to start thenormal state (S206). When this condition is not met (S205: NO), thecombat state is continued.

[0116] In the normal state, it is judged whether or not a fixedcondition about the end of the game is met (S207). For example, when allplayer's combat elements S1 or opponent's combat elements S1 arecompletely destroyed or either the player or the computer acknowledgeone's defeat, this condition can be met.

[0117] When this condition is met (S207: YES), the war simulation gameis ended (S208). When the combat state is ended, an image indicatingwhether the player is a victor or a loser or an end roll is displayed onthe display unit.

[0118] When this condition is not met (S207: NO), the war simulationgame is continued.

[0119] As is obvious from the above explanation, according to thepresent invention, not only a 3D map having three-dimensionalinformation and a cursor having only two-dimensional information can bedisplayed on the same screen page and but also their positions can befigured out, whereby determining as to which position on the 3D map isspecified by the cursor.

[0120] This makes it possible to display the three-dimensional map andthe two-dimensional cursor, which is in a state that it is completelyseparated from the map, on the display unit. As a result, enjoyment inthe game can be increased without putting the load on the game player tounderstand the game.

[0121] Various embodiments and changes may be made thereunto withoutdeparting from the broad spirit and scope of the invention. Theabove-described embodiment intended to illustrate the present invention,not to limit the scope of the present invention. The scope of thepresent invention is shown by the attached claims rather than theembodiment. Various modifications made within the meaning of anequivalent of the claims of the invention and within the claims are tobe regarded to be in the scope of the present invention.

What is claimed is:
 1. A specified position determining method appliedto a game apparatus comprising the steps of: generating map data todisplay a map image on a display of the game apparatus, the map imagetwo-dimensionally expressing a corresponding three-dimensional map whichincludes information representing a predetermined three-dimensionalfield; generating cursor data to display a cursor on the displayed mapimage; controlling a position of the displayed cursor in accordance withan instruction from an operator; virtually disposing thethree-dimensional map in parallel to the map image at a backwardposition thereof seeing from a predetermined viewpoint, such thatstraight lines extending from the predetermined viewpoint to givenpoints on a peripheral edge of the map image further pass throughcorresponding points on a peripheral edge of the three-dimensional map;projecting the predetermined viewpoint onto the three-dimensional mapvia a position of the cursor displayed on the map image; and detecting apoint on the three-dimensional map where the projected viewpointintersects the predetermined three-dimensional field, wherebydetermining the detected point as a position where the cursor specifieson the displayed map image.
 2. The specified position detecting methodaccording to claim 1 , wherein the map data generating step includes asubstep of generating map data to display a position on the map image,which corresponds to the determined position, on the display to bedistinguishable from other positions.
 3. The specified positiondetecting method according to claim 1 , wherein the predeterminedthree-dimensional field includes a plurality of areas, and the detectingstep includes a substep of detecting which of the plurality of areasincludes the detected point.
 4. The specified position detecting methodaccording to claim 3 , wherein the map data generating step includes asubstep of generating map data to display an area on the map image,which corresponds to the detected area, on the display to bedistinguishable from other areas.
 5. The specified position detectingmethod according to claim 1 , wherein the predeterminedthree-dimensional filed represents at least one of a ground surface anda water surface.
 6. A game apparatus comprising: a generator forgenerating map data to display a map image on a display of the gameapparatus, the map image two-dimensionally expressing a correspondingthree-dimensional map which includes information representing apredetermined three-dimensional field, generating cursor data to displaya cursor on the displayed map image, and controlling a position of thedisplayed cursor in accordance with an instruction from an operator; anda controller for executing game processing in accordance with a positionon the displayed map image specified by the cursor, wherein thegenerator virtually disposes the three-dimensional map in parallel tothe map image at a backward position thereof seeing from a predeterminedviewpoint, such that straight lines extending from the predeterminedviewpoint to given points on a peripheral edge of the map image furtherpass through corresponding points on a peripheral edge of thethree-dimensional map, projects the predetermined viewpoint onto thethree-dimensional map via a position of the cursor displayed on the mapimage, and detects a point on the three-dimensional map where theprojected viewpoint intersects the predetermined three-dimensionalfield, whereby determining the detected point as a position where thecursor specifies on the displayed map image.
 7. A storage medium havingcomputer readable program code means embodied in the medium, thecomputer readable program code means comprising: computer readableprogram code means for generating map data to display a map image on adisplay of the game apparatus, the map image two-dimensionallyexpressing a corresponding three-dimensional map which includesinformation representing a predetermined three-dimensional field;computer readable program code means for generating cursor data todisplay a cursor on the displayed map image; computer readable programcode means for controlling a position of the displayed cursor inaccordance with an instruction from an operator; computer readableprogram code means for virtually disposing the three-dimensional map inparallel to the map image at a backward position thereof seeing from apredetermined viewpoint, such that straight lines extending from thepredetermined viewpoint to given points on a peripheral edge of the mapimage further pass through corresponding points on a peripheral edge ofthe three-dimensional map; computer readable program code means forprojecting the predetermined viewpoint onto the three-dimensional mapvia a position of the cursor displayed on the map image; and computerreadable program code means for detecting a point on thethree-dimensional map where the projected viewpoint intersects thepredetermined three-dimensional field, whereby determining the detectedpoint as a position where the cursor specifies on the displayed mapimage.
 8. A computer program for a computer having a display, thecomputer program causing the computer to execute the steps of:generating map data to display a map image on a display of the gameapparatus, the map image two-dimensionally expressing a correspondingthree-dimensional map which includes information representing apredetermined three-dimensional field; generating cursor data to displaya cursor on the displayed map image; controlling a position of thedisplayed cursor in accordance with an instruction from an operator;virtually disposing the three-dimensional map in parallel to the mapimage at a backward position thereof seeing from a predeterminedviewpoint, such that straight lines extending from the predeterminedviewpoint to given points on a peripheral edge of the map image furtherpass through corresponding points on a peripheral edge of thethree-dimensional map; projecting the predetermined viewpoint onto thethree-dimensional map via a position of the cursor displayed on the mapimage; and detecting a point on the three-dimensional map where theprojected viewpoint intersects the predetermined three-dimensionalfield, whereby determining the detected point as a position where thecursor specifies on the displayed map image.
 9. The computer programaccording to claim 8 , wherein the computer program is stored in acomputer readable storage medium.